#!usr/bin/env python
# -*- coding:utf-8 _*-
"""
@author:zhengxin
@file: 003_algorithm.py
@time: 2024/12/10  16:08
# @describe:
"""

""" 
题目003：一个整数，它加上100后是一个完全平方数，再加上168又是一个完全平方数，请问该数是多少？
"""

# 解法1
def tm003():
    # 68的因数对
    factors = [(1, 68), (2, 34), (4, 17)]

    # 遍历因素对
    for a, b in factors:
        # n-m = a 和 n+m=b
        # 解这个方程组得到 n 和 m
        n = (a+b) // 2
        m = (b-a) // 2

        # 检查 n 和 m 是否都是整数，并且 n > m
        if n > m and (a+b) % 2 == 0 and (b-a) % 2 == 0:
            # 根据 m 计算 x
            x = m ** 2 - 100
            return x

    # 如果没有找到解，返回None
    return None

result = tm003()
print(f"满足条件的整数是：{result}")



#  解法2
import math

def tm003_1():
  for i in range(1000):
    x = math.sqrt(i+100)
    y = math.sqrt(i+100+168)

    if x%1==0 and y%1==0:
      print(i)

tm003_1()